﻿
namespace Marmat.Forms.Views
{
    namespace Grid
    {
        public partial class Column
        {

            /// <summary>
            /// 将 DateTimeFormat 属性重置为其默认值。
            /// </summary>
            protected void ResetDateTimeFormat()
            {
                this.DisplayFormat.FormatType = DevExpress.Utils.FormatType.None;
                this.DisplayFormat.Reset();
            }

            /// <summary>
            /// 是否应该序列化 DateTimeFormat 属性。
            /// </summary>
            /// <returns></returns>
            protected bool ShouldSerializeDateTimeFormat()
            {
                return false;
            }

            /// <summary>
            /// 将 Caption 属性重置为其默认值。
            /// </summary>
            protected void ResetCaption()
            {
                this.Caption = null;
            }

            /// <summary>
            /// 是否应该序列化 Caption 属性。
            /// </summary>
            /// <returns></returns>
            protected bool ShouldSerializeCaption()
            {
                return !string.IsNullOrEmpty(this._Caption);
            }

            /// <summary>
            /// 将 FieldName 属性重置为其默认值。
            /// </summary>
            protected void ResetFieldName()
            {
                this.FieldName = null;
            }

            /// <summary>
            /// 是否应该序列化 FieldName 属性。
            /// </summary>
            /// <returns></returns>
            protected bool ShouldSerializeFieldName()
            {
                return !string.IsNullOrEmpty(this._fieldName);
            }

            /// <summary>
            /// 将 Items 属性重置为其默认值。
            /// </summary>
            protected void ResetItems()
            {
                this.Items.Clear();
            }

            /// <summary>
            /// 是否应该序列化 Items 属性。
            /// </summary>
            /// <returns></returns>
            protected bool ShouldSerializeItems()
            {
                return this.Items.Count > 0;
            }
        }
    }
}